home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
COMAL
/
kboot014.d64
/
1520_driver.proc
< prev
next >
Wrap
Text File
|
2009-01-23
|
3KB
|
166 lines
9000 // BY KEVIN QUIGGLE
9005 //
9010 PROC P'OPEN(SA) CLOSED
9015 OPEN FILE 66,"",UNIT 6,SA,WRITE
9020 ENDPROC P'OPEN
9025 //
9030 PROC P'CLOSE CLOSED
9035 CLOSE FILE 66
9040 ENDPROC P'CLOSE
9045 //
9050 PROC P'CHAR(C$)
9055 P'OPEN(6)
9060 PRINT FILE 66: 1,
9065 P'CLOSE
9070 P'OPEN(0)
9075 IF C$<>"" THEN
9080 PRINT FILE 66: C$,
9085 ELSE
9090 PRINT FILE 66:
9095 ENDIF
9100 P'CLOSE
9105 ENDPROC P'CHAR
9110 //
9115 PROC P'HOME
9120 P'OPEN(1)
9125 PRINT FILE 66: "H",
9130 P'CLOSE
9135 ENDPROC P'HOME
9140 //
9145 PROC P'INIT
9150 P'OPEN(1)
9155 PRINT FILE 66: "I",
9160 P'CLOSE
9165 ENDPROC P'INIT
9170 //
9175 PROC P'MOVETO(X,Y)
9180 P'OPEN(1)
9185 COMMAND("M",X,Y)
9190 PRINT FILE 66: C$,
9195 P'CLOSE
9200 ENDPROC P'MOVETO
9205 //
9210 PROC P'DRAWTO(X,Y)
9215 P'OPEN(1)
9220 COMMAND("D",X,Y)
9225 PRINT FILE 66: C$,
9230 P'CLOSE
9235 ENDPROC P'DRAWTO
9240 //
9245 PROC P'MOVE(X,Y)
9250 P'OPEN(1)
9255 COMMAND("R",X,Y)
9260 PRINT FILE 66: C$,
9265 P'CLOSE
9270 ENDPROC P'MOVE
9275 //
9280 PROC P'DRAW(X,Y)
9285 P'OPEN(1)
9290 COMMAND("J",X,Y)
9295 PRINT FILE 66: C$,
9300 P'CLOSE
9305 ENDPROC P'DRAW
9310 //
9315 PROC P'RESET
9320 P'OPEN(7)
9325 PRINT FILE 66:
9330 P'CLOSE
9335 ENDPROC P'RESET
9340 //
9345 PROC P'COLOR(COLOR)
9350 P'OPEN(2)
9355 CONVERT(2,T$,COLOR)
9360 PRINT FILE 66: T$,
9365 P'CLOSE
9370 ENDPROC P'COLOR
9375 //
9380 PROC P'CHARSIZE(SIZ)
9385 P'OPEN(3)
9390 CONVERT(2,T$,SIZ)
9395 PRINT FILE 66: T$,
9400 P'CLOSE
9405 ENDPROC P'CHARSIZE
9410 //
9415 PROC P'ROTCHAR(ROT)
9420 P'OPEN(4)
9425 CONVERT(2,T$,ROT)
9430 PRINT FILE 66: T$,
9435 P'CLOSE
9440 ENDPROC P'ROTCHAR
9445 //
9450 PROC P'SCRIBE(BRK)
9455 P'OPEN(5)
9460 CONVERT(2,T$,BRK)
9465 PRINT FILE 66: T$,
9470 P'CLOSE
9475 ENDPROC P'SCRIBE
9480 //
9485 PROC CONVERT(AN,REF ALPH$,REF NUMB) CLOSED
9490 Z:=ZONE
9495 ZONE 0
9500 DIM OLD$ OF 12
9505 ROW:=PEEK(214); COL:=PEEK(211)
9510 PC:=PEEK(646) //CURRENT PENCOLOR
9515 BC:=PEEK(53281)-240
9520 PENCOLOR BC
9525 PRINT CHR$(19),
9530 OPEN FILE 126,"",UNIT 3,READ
9535 INPUT FILE 126: OLD$
9540 CLOSE FILE 126
9545 PRINT " ",
9550 CASE AN OF
9555 WHEN 1
9560 IF ALPH$="" THEN
9565 ALPH$:="NV"
9570 ELSE
9575 PRINT ALPH$,
9580 ENDIF
9585 WHEN 2
9590 PRINT NUMB,
9595 WHEN 3
9600 IF NUMB>=0 AND NUMB<=255 THEN
9605 PRINT CHR$(NUMB),
9610 ELSE
9615 ALPH$:="NV"
9620 ENDIF
9625 OTHERWISE
9630 ALPH$:="NV"
9635 ENDCASE
9640 IF ALPH$<>"NV" THEN
9645 PULL'SCREEN(AN,ALPH$,NUMB)
9650 ENDIF
9655 PENCOLOR PC
9660 PRINT "",OLD$
9665 POKE 214,ROW
9670 POKE 209,(1024+ROW*40) MOD 256
9675 POKE 210,(1024+ROW*40) DIV 256
9680 POKE 211,COL
9685 ZONE Z
9690 ENDPROC CONVERT
9695 //
9700 PROC PULL'SCREEN(AN,REF ALPHA$,REF NUMBER) CLOSED
9705 PRINT CHR$(19),
9710 OPEN FILE 93,"",UNIT 3,READ
9715 CASE AN OF
9720 WHEN 1
9725 INPUT FILE 93: NUMBER
9730 WHEN 2,3
9735 INPUT FILE 93: ALPHA$
9740 ENDCASE
9745 CLOSE FILE 93
9750 ENDPROC PULL'SCREEN
9755 //
9760 PROC COMMAND(CH$,X,Y)
9765 C$:=CH$+" "
9770 CONVERT(2,T$,X)
9775 IF " " IN T$ THEN T$:=T$(1:" " IN T$)
9780 C$:=C$+T$+" "
9785 CONVERT(2,T$,Y)
9790 IF T$(1)<>"0" THEN
9795 C$:=C$+T$
9800 ELSE
9805 C$:=C$+T$(2:LEN(T$))
9810 ENDIF
9815 ENDPROC COMMAND
9820 //